﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Flighttracker
{
    public class Vluchtstatus : ISearchable
    {
        public Vlucht Vlucht { get; private set; }
        public string Vluchnummer { get { return Vlucht.Vluchtnummer; } }
        public DateTime StatusTijd { get; private set; }
        public double Longitude { get; private set; }
        public double Latitude { get; private set; }
        public double Altitude { get; private set; }
        public Radar Radar { get; private set; }
        public string Radarcode { get { if (Radar != null) return Radarcode; else { return "-"; } } }

        /// <summary>
        /// Constructor
        /// </summary>
        public Vluchtstatus(Vlucht vlucht, DateTime statusTijd, double longitude, double latitude, double altitude, Radar radar)
        {
            this.Vlucht = vlucht;
            this.StatusTijd = statusTijd;
            this.Longitude = longitude;
            this.Latitude = latitude;
            this.Altitude = altitude;
            this.Radar = radar;
        }

        public Vluchtstatus(List<string> stringList)
        {
            Vlucht = (Vlucht)Flighttracker.Instance.ZoekObject(stringList[0]);
            Vlucht.VoegVluchtstatusToe(this);
            StatusTijd = DateTime.ParseExact(stringList[1], "d-M-yyyy H:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
            if (stringList[2] != "null") Radar = (Radar)Flighttracker.Instance.ZoekObject(stringList[2]);
            Longitude = Convert.ToDouble(stringList[3]);
            Latitude = Convert.ToDouble(stringList[4]);
            Altitude = Convert.ToDouble(stringList[5]);
        }

        public bool ZoekUniekID(string id)
        {
            if (String.Format("{0} {1}", Vlucht.Vluchtnummer, StatusTijd.ToString()) == id)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
    }
}